package com.liuxinlong.modules.system.service;

import java.util.List;
import java.util.Map;

/**
 * 缓存数据信息接口
 *
 * @author liuxinlong@hotwater.com.cn
 * @version 1.0.0
 * @since 2023-04-20
 */
public interface RedisManageService {
    /**
     * 分页查询缓存数据信息
     *
     * @param queryParam 请求信息
     * @return 缓存数据信息列表
     */
    List<Map<String, Object>> pageRedisInfo(Map<String, Object> queryParam);

    /**
     * 查询缓存数据信息总数
     *
     * @param queryParam 请求信息
     * @return 缓存数据信息总数
     */
    int getRedisCount(Map<String, Object> queryParam);

    /**
     * 删除缓存信息
     *
     * @param id 缓存id
     */
    void deleteRedisInfo(String id);

    /**
     * 清空缓存信息
     *
     * @param id     缓存id
     * @param subKey 子key
     */
    void clearRedisInfo(String id, String subKey);

    /**
     * 查询缓存数据详情信息
     *
     * @param id 请求信息
     * @return 缓存数据详情信息列表
     */
    List<Map<String, Object>> queryRedisDetailInfo(String id);

}
